﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Biblioteca.Interfaces;
using System.Data;

namespace Biblioteca.Models 
{
    public class TemaModel : ITema
    {
        private BibliotecaStore db;

        public TemaModel(BibliotecaStore data)
        {
            this.db = data;
        }

        public void crearTema(Tema tema)
        {
            db.Temas.AddObject(tema);
            db.SaveChanges();
        }

        public void modificarTema(Tema tema)
        {
            db.Temas.Attach(tema);
            db.ObjectStateManager.ChangeObjectState(tema, EntityState.Modified);
            db.SaveChanges(); ;
        }

        public void eliminarTema(Tema tema)
        {
            db.Temas.DeleteObject(tema);
            db.SaveChanges();
        }

        public Tema getSingle(int idTema)
        {
            return db.Temas.Single(t => t.IdTema == idTema);
        }

        public IList<Tema> getAll()
        {
            return db.Temas.OrderBy(m => m.Nombre).ToList();
        }
    }
}